package com.kang.service.impl;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;

import javax.annotation.Resource;

import org.springframework.stereotype.Service;

import com.kang.dao.IntemInformationMapper;
import com.kang.pojo.IntemInformation;
import com.kang.service.IntemInformationService;
import com.vonechina.entity.page.ItemPage;
import com.vonechina.entity.page.IteminfoPage;
/**
 * 物品服务层实现类
 * 
 * @author zs614
 *
 */
@Service("IntemInformationService")
public class IntemInformationServiceImpl implements IntemInformationService {
	/**
	 * 物品持久层
	 */
	@Resource
	private IntemInformationMapper iif;

	/**
	 * 查询物品信息根据物品
	 * 
	 * @param inteminformationid
	 *            物品ID
	 * @return
	 */
	@Override
	public IntemInformation selectByID(Integer inteminformationid) {

		return iif.selectByID(inteminformationid);
	}

	/**
	 * 新增物品
	 * 
	 * @param record
	 *            物品实体类
	 * @return
	 */
	@Override
	public int insertSelective(IntemInformation record) {

		return iif.insertSelective(record);
	}

	/**
	 * 更新物品
	 * 
	 * @param record
	 *            物品实体类
	 * @return
	 */
	@Override
	public int updateByPrimaryKeySelective(IntemInformation record) {

		return iif.updateByPrimaryKeySelective(record);
	}

	/**
	 * 更新物品
	 * 
	 * @param record
	 *            物品实体类
	 * @return
	 */
	@Override
	public int updateByPrimaryKey(IntemInformation record) {

		return iif.updateByPrimaryKey(record);
	}

	/**
	 * 分页查询物品
	 * 
	 * @param iteminfoPage
	 *            搜索条件实体类
	 * @return
	 */
	@Override
	public List<IntemInformation> listItem(IteminfoPage iteminfoPage) {
		iteminfoPage.setRows(iif.countItem(iteminfoPage));
		return iif.listItem(iteminfoPage);
	}

	/**
	 * 删除物品
	 * 
	 * @param inteminformationid
	 *            物品ID
	 * @return
	 */
	@Override
	public int deleteByPrimaryKey(Integer inteminformationid) {

		return iif.deleteByPrimaryKey(inteminformationid);
	}
	/**
	 * 分页查询符合条件物品
	 * 
	 * @param page
	 *            搜索条件实体类
	 * @return
	 */
	@Override
	public List<IntemInformation> listNotInItem(ItemPage page) {
		page.setRows(iif.countNotInItem(page));
		return iif.listNotInItem(page);
	}

	/**
	 * 生成物品编号
	 * 
	 * @return
	 */
	@Override
	public String generateItemcode() {
		SimpleDateFormat sdf=new SimpleDateFormat("yyMMdd");
		String text=sdf.format(new Date())+"0001";
		Long no=Long.parseLong(text);
		String max=iif.selectMaxItemCode();
		Long l=0l;
		if(max!=null){
			l=Long.parseLong(max.replaceAll("[a-zA-Z]", ""));
		}
		if(l>=no){
			no=l+1;
		}
		return ""+no;
	}


	/**
	 * 更新物品库存
	 * 
	 * @param i2
	 *            物品实体类
	 * @return
	 */
	@Override
	public int updateIntemInformationCurrentStock(IntemInformation i2) {
		return iif.updateIntemInformationCurrentStock(i2);
	}
	
	
	
}
